home *** CD-ROM | disk | FTP | other *** search
/ Amiga Plus Leser 15 / Amiga Plus Leser CD 15.iso / Tools / Freeware / AmiPCB / ARexx / NewScript.AmiPCB < prev    next >
Encoding:
Text File  |  2002-03-13  |  3.3 KB  |  97 lines

  1. /* NewScript.AmiPCB, édition d'un nouveau script à l'aide de AmiTex
  2.    Version 1.00: 3 Juillet 2001 © R.Florac
  3.    Version 1.01: 1er décembre 2001 (German localization by A. Greve)
  4.    Version 1.02: 20 janvier 2002 (utilisation PCBPATH)
  5.    $VER: 1.02 (© R.Florac, 20 janvier 2002)
  6.    Chargement automatique d'un nouveau script dans Amitex depuis AmiPCB
  7.    Le script lance Amitex s'il ne tourne pas et demande le
  8.    chargement du fichier EmptyScript.AmiPCB dans une fenêtre.
  9.    Le curseur est directement placé sur la ligne où doit
  10.    débuter la partie particulière au script, après les
  11.    déclarations usuelles.
  12.    L'utilisateur est invité à donner le nom du nouveau script
  13.    afin de donner le titre adéquat au script.
  14.    Ce script peut être appelé depuis l'un des menus Macros/ARexx.
  15.    Il peut être adapté à n'importe quel éditeur de texte
  16.    possédant une interface ARexx.
  17.  
  18.    This script loads a new script in an editor for editing.
  19.    It's written for my text editor, Amitex. Adapt it to your
  20.    own editor to suit to your needs.
  21.    Press the CTRL key while selecting an ARexx menu entry
  22.    to call this script under AmiPCB
  23.  
  24.    Dieses Skript lädt ein neues Skript zum Bearbeiten in einen Editor.
  25.    Es ist geschrieben für meinen Texteditor AmiTex.
  26.    Wenn Sie einen anderen Texteditor verwenden, müssen Sie es an diesen
  27.    anpassen.
  28.    Drücken Sie die CTRL-Taste während der Auswahl eines ARexx Menü-
  29.    eintrags, um dieses Skript von AmiPCB aus aufzurufen.
  30. */
  31.  
  32. signal on error             /* pour l'interception des erreurs */
  33. signal on syntax
  34.  
  35. options results
  36. lf='0a'x
  37.  
  38. port = ADDRESS()                    /* lecture du nom du port AmiPCB */
  39.  
  40. 'PCBPATH'
  41. pcbpath=result
  42.  
  43. fr = 'ARexx/InitVars.AmiPCB'()
  44.  
  45. address command
  46. if ~show(p, "AMITEX") then do       /* A améliorer (AmiTEX0, AmiTEX1...) */
  47.     f=0                 /* il n'y avait pas de fenêtre ouverte */
  48.     'run > nil:' "SYS:Tools/Amitex/AmiTex"  /* chargement de l'éditeur */
  49.     waitforport "AMITEX"
  50. end
  51. else f=1                /* il y a déjà une fenêtre active */
  52.  
  53. ADDRESS(AMITEX)
  54. 'STOFRONT'
  55. select
  56.     when fr=1 then do
  57.         if f=1 then 'NEW("NouveauScript.AmiCAD")'    /* demande l'ouverture d'une autre fenêtre */
  58.         'LOAD("'pcbpath'ARexx/EmptyScript.AmiPCB")'    /* demande le chargement du script "EmptyScript" */
  59.  
  60.         'ASKTEXT("Quel est le nom'lf'de ce nouveau script ?", ".AmiPCB")'  /* demande du titre */
  61.         titre = result
  62.         if titre ~= "" then 'FILENAME("'pcbpath'ARexx/'titre'")'       /* renomme la fenêtre */
  63.     end
  64.     when fr=2 then do
  65.         if f=1 then 'NEW("NewScript.AmiPCB")'
  66.         'LOAD("'pcbpath'ARexx/EmptyScript.AmiPCB")'
  67.  
  68.         'ASKTEXT("Wie lautet der Name'lf'für dieses neue Skript ?", ".AmiPCB")'
  69.         titre = result
  70.         if titre ~= "" then 'FILENAME("'pcbpath'ARexx/'titre'")'
  71.     end
  72.     otherwise do
  73.         if f=1 then 'NEW("NewScript.AmiPCB")'
  74.         'LOAD("'pcbpath'ARexx/EmptyScript.AmiPCB")'
  75.  
  76.         'ASKTEXT("What is the name'lf'of this new script ?", ".AmiPCB")'
  77.         titre = result
  78.         if titre ~= "" then 'FILENAME("'pcbpath'ARexx/'titre'")'
  79.     end
  80. end
  81.  
  82. 'SETFIND("The_Name_Of_Your_Script.AmiPCB"):FIND(1):WRITE("'titre'"):FIND(1):WRITE("'titre'"):GOTO(1,45)'
  83.  
  84. exit
  85.  
  86. /* Traitement des erreurs, interruption du programme */
  87. syntax:
  88. address (port)
  89. erreur=RC
  90. Call 'ARexx/_Syntax.rexx'(fr,'NewScript.AmiPCB',SIGL,erreur)
  91. exit
  92.  
  93. error:
  94. address (port)
  95. Call 'ARexx/_Error.rexx'(fr,'NewScript.AmiPCB',SIGL)
  96. exit
  97.